﻿using System;
using System.Collections.Generic;
using System.Text;

namespace Bovespa.Sinacor.Servico.BaseConhecimento.Produto.Negocio
{
    public class Produto
    {
        #region Metodos

        /// <summary>
        /// Recupera uma lista de entidades de negocio "Produto".
        /// </summary>
        public List<Bovespa.Sinacor.Servico.BaseConhecimento.Produto.Entidades.Produto> ConsultarProduto()
        {
            Dados.Produto dados = new Dados.Produto();
            return dados.ConsultarProduto();
        }

        /// <summary>
        /// Recupera uma lista de entidades de negocio "Produto" por hierarquia.
        /// </summary>
        public List<Bovespa.Sinacor.Servico.BaseConhecimento.Produto.Entidades.Produto> ConsultarProdutoPorHierarquia()
        {
            Dados.Produto dados = new Dados.Produto();
            return dados.ConsultarProdutoPorHierarquia();
        }

        /// <summary>
        /// Recupera uma entidade de negocio "Produto".
        /// </summary>
        public Bovespa.Sinacor.Servico.BaseConhecimento.Produto.Entidades.Produto ObterProduto(int id)
        {
            Dados.Produto dados = new Dados.Produto();
            return dados.ObterProduto(id);
        }

        /// <summary>
        /// Recupera uma entidade de negocio "Produto".
        /// </summary>
        /*public List<Bovespa.Sinacor.Servico.BaseConhecimento.Produto.Entidades.Produto> ConsultarProduto(int id)
        {
            Dados.Produto dados = new Dados.Produto();
            return dados.ConsultarProduto(id);
        }*/

        /// <summary>
        /// Persiste uma entidade de negocio "Produto".
        /// </summary>
        public void InserirProduto(Bovespa.Sinacor.Servico.BaseConhecimento.Produto.Entidades.Produto produto)
        {
            Dados.Produto dados = new Dados.Produto();
            dados.InserirProduto(produto);
        }

        /// <summary>
        /// Remove uma entidade de negocio "Produto".
        /// </summary>
        public void ExcluirProduto(int id)
        {
            Dados.Produto dados = new Dados.Produto();
            dados.ExcluirProduto(id);
        }

        /// <summary>
        /// Atualiza uma entidade de negocio "Produto".
        /// </summary>
        public void AtualizarProduto(Bovespa.Sinacor.Servico.BaseConhecimento.Produto.Entidades.Produto produto)
        {
            Dados.Produto dados = new Dados.Produto();
            dados.AtualizarProduto(produto);
        }

        #endregion
    }
}
